System and method for simultaneously displaying video programming and instant messaging

ABSTRACT

Instant messaging (IM) and TV programming are displayed simultaneously on a TV screen. An instant messaging window on the screen displays posted messages and identifies the TV program (if any) being currently viewed by each user posting messages. An icon accompanying a message can be selected by a message recipient to permit a telephone call to be automatically dialed and completed to the message sender. Video files attached to sent messages include a key which may be compared to a key at the destination, so that the video file may be viewed by the recipient only if the there is a match. Data collected at a server managing the instant messaging may be used to monitor message, television and telephone activity, as well as demographic data associated with the IM users.

BACKGROUND OF THE INVENTION

Instant messaging has become a popular forum for exchanging messages andinformation among computer users. While popular, it has some drawbacks.For example, the instant messaging screen used for sending and receivinginformation typically identifies the person posting any message next tohis/her message, but it may not reveal other conditions pertaining tothe message or its sender. For example, if the sender is engaged in asecond activity (such as watching a TV program) at the same time assending and receiving instant messages, the recipient may not know aboutthe second activity unless told by the sender as part of the message.

Currently available instant messaging (IM) applications have othercharacteristics that limit their use as a complete form ofcommunications. For example, while it may be possible to initiate avoice conversation as part of the IM application, such voicecommunications are implemented using a communication channel establishedby an IM server over the internet. Each user must have the propersoftware and hardware for participating in the voice communications.Such communications may not use conventional telephones and the PSTN(public switched telephone network).

Also, while it is known for people using email and instant messages tosend attachments with their messages, there can be problems surroundingthe attachments. For example, if the sender attaches a video clip of aTV program or movie, the recipient may or may not be a subscriber to theservice (e.g., premium cable TV channel) from which the video clip wasobtained.

Further, while IM applications have the capability of collecting dataconcerning those sending and receiving messages, there has not existed aconvenient manner of collecting that data and using it for purposes ofunderstanding the habits or needs of users.

BRIEF SUMMARY OF THE INVENTION

There is provided, in accordance with the present invention, a displaysystem for use in a communications network, the display system having adisplay device, and plural display windows at the display device, theplural windows for simultaneously displaying multiple content to aviewer, wherein a first display window displays video programmingcontent and wherein a second display window displays content from aninstant messaging application.

In another embodiment, the video programming content is a broadcasttelevision program provided to the viewer over one of a plurality ofselectable television channels and wherein the instant messaging contentincludes a program ID for identifying the broadcast television programbeing viewed by instant messaging (IM) users.

In another embodiment, the instant messaging content further includes aselectable telephone communications element, and wherein a telephonecommunications line is established over the communications networkbetween the viewer (the user at the display system) and a remote IM userhaving his or her personal ID displayed as part of the instant messagingcontent, when the telephone communications element is selected by theviewer.

In yet another embodiment of the invention, the viewer is a subscriberto video programming content received over the communications network,the viewer is assigned one or more security keys in order to display thevideo programming content, an electronic message sent by the viewer to aremote IM user includes a video data file attachment obtained from thevideo programming content, the video data file includes a security keyassociated with the video programming content, and the video data fileis displayed for the IM user only if that user has a security keymatching the security key associated with the video programming content.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a simplified view of a network in accordance with oneembodiment of the present invention.

FIG. 2 illustrates a portion of the network seen in FIG. 1.

FIG. 3 is a block diagram illustrating the components of the set top box(STB) seen in FIG. 2.

FIGS. 4 through 6 illustrate various screen displays seen on a TV screenas part of an instant messaging (IM) application, and implementing oneembodiment of the invention.

FIG. 7 is a flow diagram illustrating a program process carried outwithin the STB seen in FIG. 3, in order for an IM user to make atelephone call to another IM user.

FIG. 8 is a flow diagram illustrating a program process carried outwithin the STB for sending a video file from one IM user to another.

FIGS. 9 and 10 illustrate functionality within the STB of an IM user fordecrypting video program signals, and providing a key for use with avideo file attachment that is to be sent to another IM user.

FIG. 11 illustrates a database management system for use with an IMserver, in order to collect and report data at the IM server, such dataassociated with IM users.

FIG. 12 illustrates a report on IM activity and TV watching habits, thatcould be generated by the database management system of FIG. 11.

DETAILED DESCRIPTION OF THE INVENTION

There are various configurations and embodiments implementing thepresent invention. One such implementation is shown in FIG. 1, where acommunications network 100 has a subscriber premises 110 connected by anetwork interface device (NID) 112 to a service provider network 120.The NID 112 serves as demarcation point and interface between a twistedpair drop cable 160 and the twisted pair and other wiring (andequipment) within the subscriber premises. In the embodimentillustrated, the subscriber receives VDSL (Very high data rate DigitalSubscriber Line) services from the service provider, whereby thesubscriber is provided internet access at a personal computer 130,receives video programming (such as video-on-demand) and otherinformation for display at a television 132, and has telephone or voiceservice at one or more telephones 134.

The network illustrated is a fiber-to-the-neighborhood (FTTN)distribution system, with a central office 150 having optical fiberlines 154 (e.g., OC-3 to OC-12c) extending to a universal system accessmultiplexer (USAM) 156, which in turn is connected to the subscriber NID112 via the twisted pair copper wire 160. The arrangement seen providesa dedicated VDSL loop between the USAM 156 and the subscriber, using anexisting POTS or telephone system twisted pair. A residential gateway orset top box (STB) 166 at the subscriber premises provides a connectionpoint (electrical connections, encoding/decoding, multiplexing, etc.)between the network and the various customer devices (e.g., PC 130, TV132 and telephone 134). While shown as separate components, the NID 112and the STB 166 could be combined to perform all subscriber interfacefunctions within a single unit.

The fiber optic lines 154 running from the USAM 156 connect to a highbandwidth, host digital terminal (HDT) 170 within the central office150. The HDT 170 receives various digital signals containing video, dataand voice (from various sources—to be described) and combines those as abroadband signal to the subscriber over the twisted pair drop cable 160.Bi-directional connection paths or channels connect to the HDT 170 andcarry (1) voice signals to/from the public switched telephone network(PSTN) 180, directly or through a digital telephone switch 182, (2)video signals (and appropriate video command and control signals)to/from a video headend system 186 provided by a video informationprovider, and (3) data to/from the internet 190. The VDSL network asthus far described is well known, and the various systems, componentsand interfaces used in implementing such network are available andestablished by various standards bodies, telecommunications serviceproviders and manufacturers of VDSL equipment.

Using the network 100 (or any other internet access network and service)for accessing the internet obviously connects the subscriber to a vastnetwork of information providers and their servers, and one suchserver—an instant messaging (IM) server 192—is shown in order to furtherillustrate various embodiments of the present invention. The IM server192 is of the type operated by any one of many commercial instantmessaging service providers, such as AOL®, Yahoo!® and MSN® (AOL is aregistered trademark of American Online Inc., Dulles, Va., Yahoo is aregistered trademark of Yahoo! Inc. of Sunnyvale, Calif., and MSN is aregistered trademark of Microsoft Corporation, Redman, Wash.), and worksin conjunction with the subscriber's equipment to permit receiving,displaying and sending instant messages among subscribers that have, forexample, formed a “buddy list” for such purpose (a “buddy list” is alist or group of users that have collectively selected each other, andthat communicate with each other within that group via instantmessaging).

Before leaving FIG. 1, it should be noted that in one embodiment of theinvention, the television 132 at the subscriber premises 110 will beused to display not only video programming content delivered over thecommunications network 100 to the subscriber originating from headend186), but also to display instant messaging content using applications,information and services provided by the IM server 192.

Turning now to FIG. 2, there is shown in greater detail the equipmentwithin the subscriber premises 110 that may be used in implementing oneembodiment of the present invention. In particular, there is shown theset top box (STB) 166, receiving broadband signals from a twisted pairline 212 coming from the NID 112 (FIG. 1). As mentioned earlier, thesignals passing through the NID (provided over the twisted pair dropcable or line 160 from the USAM 156—see FIG. 1) contain voice, video anddata originating from any one or all of the PSTN 180, internet 190, andvideo headend system 186. The relevant functions within STB 166 will bedescribed later, but briefly video, data and voice signals present inthe broadband signals on line 212 are separated. Video (and companionaudio) signals are usually received in an encoded format (e.g., MPEG-2)from the line 212, and are converted by the STB to an analog or otherformat suitable for a conventional television set and provided over line214 to the TV 132. Voice signals are provided to telephone equipmentover a telephone (bi-directional) line 216, and data signals areprovided over a bi-directional line 218 to one or more personalcomputers. The STB 166 is powered by a suitable power source, such ashousehold AC power.

The TV 132 has a display screen (CRT, LCD, etc.), with the displayoperated to include a primary window 222 for displaying videoprogramming content (originating from the video headend 186), and asmaller, secondary window 224 for displaying instant messaging screens.As will be described later, the STB 166 acts as a client (having its ownprocessor and memory), running a java-capable or other suitable browserthat is programmed to use an instant messaging application or appletdownloaded from the IM server 192. Thus for instant messaging functionsprogrammed into the STB processor, including sending, receiving anddisplaying instant messages and related content, the STB willcommunicate with the IM server 192 to perform such instant messagingfunctions, and the instant messaging screens used for such functions aredisplayed on the secondary window 224 and overlay the video programmingon the primary window 222 of the TV 132.

The size, shape and format of the windows 222 and 224 may change to suitthe preferences of the user. While FIG. 2 shows them as overlapping, itshould be appreciated that for ease of viewing, the secondary windowcould have a vertical or horizontal shape on one side of the displayscreen, so that the primary window 222 can be resized when secondarywindow 224 appears (in order for the video programming on the primarywindow to not be obstructed by the secondary window).

It should be noted that the PC 130 receiving data signals over line 218may also have an instant messaging application applet downloaded fromthe same or a different IM server 192. However, such instant messagingfunctions and the corresponding screens are displayed at the PC 130rather than the TV 132. The STB 166 may include a conventional routerfunction that recognizes the IP addresses appended to messages receivedat the line 212 (and originating over the internet), and routes thosemessages to the client within the STB when they are addressed to theinstant messaging application running within the STB, for ultimatedisplay of instant messaging screens at the TV 132. Of course, IPaddresses appended to messages intended for the PC 130 (whether as partof an instant messaging application or any other application on the PC)are routed by the STB to the PC over line 218. While not specificallyillustrated, it should be appreciated that the STB as a client may alsorun applications other than instant messaging applications, and suchapplications or applets may also have information displayed at the TV132.

The STB 166 works with two user interface devices, a remote control 230and a wireless keyboard 232. Both remote control 230 and wirelesskeyboard 232 may use conventional infra red techniques to communicatewith the STB 166. The remote control 230 may have conventional controlsor buttons for controlling the operation of the TV 132 for viewingtelevision programming. The keyboard 232 may likewise be a conventionaldevice for controlling the client in the STB, in order to enter data andotherwise interact with any application controlling the secondary window224 on the TV, which as mentioned earlier, may be used to displayinstant messaging content. While the remote control and keyboard areshown as separate devices herein, it will be appreciated that they couldin fact be integrated into a single device for both controllingtelevisions programming and entering data. While not illustrated, otheruser interface devices (e.g., a mouse, roller ball, etc.) could also beused for controlling the STB 166.

The internal features of the set top box 166 are illustrated in FIG. 3.In this example, the STB 166 is controlled by a central processing unit(CPU) 312, which is coupled to an Application-Specific IntegratedCircuit (ASIC) 313. The CPU executes software designed to implementvarious functionality performed at the STB, in conjunction with the ASIC313 and other components. The ASIC 313 also operates in conjunction withthe CPU 312 to interconnect various components to the CPU and operatethe TV 132 in a well known manner. Connected to the ASIC are memorydevices, such as a ROM 314 (e.g., for storing code used by the CPU), aRAM 316 (e.g., for storing digitized TV signals so that they can beprocessed by the CPU 312 before viewing, in order to provide, amongother things, shared or split screen viewing), IR interfaces 318 and 320for the remote control 230 and wireless keyboard 232, respectively, anda VDSL interface 324 for receiving VSDL signals from the NID 112. A massstorage device 330 may be used for storing data and applications, andcan be any suitable medium for storing machine executable instructionsand data, such as magnetic disks, optical disks, and the like. Alsowithin the STB 166 are an audio digital-to-analog converter (DAC) 328which provides audio output to the TV 132, a video encoder/decoder 332which provides video output to the TV 132, a telephone interface ormodem 334 for passing voice signals to/from the telephone 134, and adata interface or modem 336 for passing data signals to/from the PC 130.As should be appreciated, the telephone interface 334 may have multipletelephone ports, in order to accommodate multiple phone lines (each witha different phone number) within the subscriber premises, as well as theability to connect several telephones to a single port (for multipletelephones/extensions sharing a single phone line). Furthermore, thedata interface 336 may have multiple data ports in order to permitconnection of more than one PC 130 to the STB 166.

The CPU 312 runs a java capable browser stored in the memory of the STBin order to download an instant messaging application. The instantmessaging application may be used by the subscriber to display instantmessages and related content from other instant message subscribers,such content displayed in one embodiment on the secondary window of TV132. However, before displaying the content, it is necessary for eachuser to establish a profile. Such profiles are set up in a well-knownmanner to those familiar with instant messaging, by entering personaldata (e.g., via keyboard 232) pertaining to the user. However, inaccordance with one embodiment of the present invention, certain profiledata is established to enable users to communicate in a manneraugmenting the conventional entry and display of data on an instantmessage screen. In particular, users will enter telephone numberinformation so that while communicating with other users on thesubscriber's “buddy” list, the user can initiate a telephone call todiscuss the content of their instant messages. This entry can be done inadvance of posting the instant messages, e.g., when setting up a userprofile at the IM server 192. The manner of entering telephoneinformation is illustrated in FIG. 4, where a profile screen isillustrated for setting up or joining an instant messaging group or“buddy list”, or otherwise permitting one to establish himself as an IMuser.

Turning to FIG. 4, there is shown a screen 410 for entering the personalprofile information of an IM user (i.e., a person who desires to send orreceive email within an IM application). As can be seen, the screenincludes fields for entering information on the user, including a “UserID” field 414 (the ID displayed with an instant message), “Real Name”field 416 (the actual real name of the user), “Location” field 418 (acity name or other geographical information concerning the user), “Age”field 420, “Marital Status” field 422, “Gender” field 424 and“Occupation” field 426. The forgoing fields are those commonly used bypeople to establish themselves as users within an IM application andmake themselves available to be added to “buddy lists” set up by thatuser or others (additional or alternative fields could, of course, beemployed depending on how the IM application will be used). Asillustrated in FIG. 4, the profiled user has provided a User ID of“jsmith”, having a Real Name “James Smith”, living in Denver, Colo., andbeing a 22 year old, single, male student.

The information in the profile (or portions of it) can be designated as“public”, that is, revealed to all other users in order for them todecide if they want the profiled user included in their buddy list, andto organizations such as commercial entities that may use the profileinformation (and other collected data—to be described) for commercialpurposes. Alternatively, the information (or portions of it) may bedesignated as private, meaning that it is made available only to theuser setting up the profile, or to others that the user has selected.

In one embodiment of the invention, the profile screen 410 includes a“Telephone No.” field 428 and a “Profile Public/Private” field 430. The“Telephone No.” field 428 permits the user to enter and the IM server tostore the personal telephone number of the profiled user (standard 10digits—North American Numbering Plan), and ultimately permits otherusers to telephone the profiled user during an instant messaging session(as will be described in greater detail later). The “ProfilePublic/Private” field 430 permits the profiled user to designate his/herinformation as public or private (in the illustrated screen of FIG. 4,the user has designated his information as public).

It should be appreciated that the STB 166 may store and manage multipleprofiles so that each household member at the subscriber premises myseparately use the IM application with his/her own profile andpreferences. A screen (not shown) may be initially presented for eachuser to identify (using keyboard 232) himself and thereby use hisprofile and preferences. The STB may also be programmed to default toone user if he/she is the principal user of the IM application.

FIG. 5 illustrates a session set up screen 510 used by a user whensetting up an instant message session with people on his/her buddy list.As illustrated, the user having the ID “jsmith” has two buddy lists,“List No. 1 and “List No. 2”. List No. 1 is illustrated as having fourother users who are part of the list, and List No. 2 has two otherusers. Either list can be selected or clicked to permit “jsmith” to logon or join that instant messaging or chat session (as seen in FIG. 5,List No. 1 has three of its members logged “on” and one logged “off”,and List No. 2 had both of its members logged “off”). In addition toidentifying each user, screen 510 displays the TV program (if any) beingcurrently viewed by that user.

As also illustrated in FIG. 5, the screen 510 has two fields forimplementing certain embodiments of the present invention. An “AcceptCalls” field 516 permits the user to either accept telephone calls fromother users on the selected buddy list, or not accept those calls. A “TVShow” field 518 permits the user to enter the name of the TV show orprogram that he is watching while he is present in the IM session. Inthe embodiment shown in FIG. 2, the TV program may be the programdisplayed on the primary window 222 of the TV 132, while screens fromthe instant messaging application are displayed on the secondary window224 of the TV 132. (While not shown, screen 510 could be pre-programmedto list TV programs or channels, so that the user may select the onebeing watched.) Various examples of using the TV programmingidentification will be described shortly in conjunction with FIG. 6.

It should be mentioned that while the embodiments of the inventiondescribed in connection with FIG. 5 are illustrated with the userentering the name of TV programming in field 518, alternatively suchprogramming information could be captured electronically at the STB 166.That is, the STB 166 will receive programming ID information along withthe actual programming content, as part of the standard MPEG-2 formattedsignals from the video headend 186 (FIG. 1), and if an IM application(implementing the present invention) is running at the same time on theCPU 312 within the STB 166, such programming identification can becaptured and stored automatically by the IM application. Thisarrangement, of course, permits the IM application to recognize a changein the programming content or channel (such as a result of the userchanging TV channels) that may occur during the IM session, anddynamically change the displayed TV programs ID without the user havingto return to screen 510 and manually change the TV program ID or name.

Turning now to FIG. 6, there is illustrated a message display screen 610that is displayed after a buddy list has been selected by the user (inthe screen illustrated in FIG. 6, the screen illustrates messages fromall the users who are part of “List No. 1” in FIG. 5, and each of thoseusers sees the same screen format). The message display screen 610 willappear in the secondary window 224 of TV 132. The message display screenhas two windows or subscreens, a sent/posted message subscreen 614 fordisplaying all messages that have been sent by all of the users, and amessage composition subscreen 616 that is used in order to composemessages before they are sent (by selecting a “Send” button 618) to allthe other users. As seen in FIG. 6, each message has four components,namely an “ID” component 622 displaying the ID of the message sender, a“TV Show” component 624 displaying the name of the television programthat the sender is watching (entered for example, at screen 510 in FIG.5), a “Message Content” component 626 showing the actual content of thesent message, and a “Call” component 628 having for each message atelephone icon or button (graphical element) that can be selected topermit the user viewing the screen to telephone the sender of thatmessage (assuming that the sender has decided to accept calls at field516 in FIG. 5). As conventional, attachments (text, audio, video) can beincluded with a message and, although not illustrated in FIG. 6, anattachment icon can be displayed with the message to indicate thepresence of the attachment.

The screen 610 also has a Send Video File button 640 for sending a videofile attachment to any message composed at subscreen 616 (the details ofsuch attachment will be described later).

Thus, it can be appreciated that the user of the IM applicationimplemented by the screens of FIGS. 4, 5 and 6 is not only able to seemessages from other users on his/her buddy list, but also see which TVprogram each user is watching. This facilitates “real time” conversation(via email messages) concerning the TV program as part of the instantmessaging session. Further, the user can select the “Call” button at anymessage in order to initiate a telephone call to the sender of thatmessage so that, among other things, the user selecting the “Call”button and the sender of the message being called, may also have a “realtime” voice conversation about the particular TV show being watched (aswell as any other subject) at the same time as they are each viewing themessage display screen 610 in FIG. 6.

It should be further appreciated that other embodiments may usevariations of the screens seen in FIGS. 4, 5 and 6. As one example,rather than a chat session involving a group of users from a predefinedbuddy list, a user may be messaging only one (or a few) individual users(that are not part of a buddy list). While the screen 610 in FIG. 6might, in such instance, show only one other user and his/her messages,the screen 510 in FIG. 5 can be selected for simultaneous display sothat the user may still monitor (separately) other users in the buddylist(s), their status (“on”/“off”), and which TV show they are eachwatching. While not illustrated in FIG. 5, the screen 510 could alsoinclude a call button (similar to call button 628 in FIG. 6) so that acall can be initiated to any other person on the buddy list using screen510, even if such person is not part of an active instant messagingsession (screen 610).

Turning to FIG. 7, there is shown a flow diagram illustrating theprocess and associated program steps (implemented within STB 166) formaking a telephone call by selecting the Call button 628 seen in FIG. 6.After the Call button has been selected at step 710, the IM applicationrunning within STB 166 checks profile information of the selected user(which has been downloaded by the IM Server 192 into memory within theSTB) to determine (step 712) whether the person to be called isaccepting telephone calls (such information was entered at field 516,screen 510 in FIG. 5, when that person joined the IM session). If theperson is not accepting calls, a message to that effect (not shown) isdisplayed on the TV 132, at step 714. If the person is accepting calls,then the IM application at step 718 reads the telephone number storedwith the profile information within the STB memory (such number wasinitially entered when the person set up his/her profile at screen 410seen in FIG. 4). The IM application then determines the correct dialingformat of the telephone number to be called, step 720. This lastmentioned step is necessary because the actual number to be dialed mayhave a format different than the format entered at screen 410.

This last mentioned step 720 may involve one or more subprocesses,depending on the nature of the number stored for the person beingcalled. For example, all numbers are entered in a ten digit format asseen at screen 410 (three digit area code plus seven digit phonenumber). Two lookup tables within the STB can be used to determine theproper dialing format needed to make the call. As an example, letsassume the person being called lives in the same area code, and a sevendigit number (without area code) is used to make the call. The STB willbe programmed to convert the telephone number stored (ten digits) toseven digits by dropping the area code before dialing the number.Similarly, if the call is a long distance call, requiring that a “1”precede the ten digit number when dialed, the STB is programmed toinclude the “1” in the dialed number. The following Table 1 illustratesseveral different algorithms stored in STB 166 and that can be used toconvert the stored telephone number into an appropriately formattednumber for dialing: TABLE 1 Algorithm Algorithm Index Name AlgorithmDescription 0 1 + 10 D Dial out 1 followed by the last 10 digits 1  7 DDial out the last 7 digits 2 10 D Dial out the last 10 digits 3 1 + 7 D Dial out 1 followed by the last 7 digits 4  5 D Dial out the last 5digits

Further, the following Table 2 illustrates an excerpted portion of alook-up-table that can also be stored in the STB 166 for determiningwhich of the algorithms (such as those in Table 1) should be used todial the called number: TABLE 2 Area Code Algorithm Index * * * * * *201 0 202 0 203 0 204 3 205 2 206 0 207 0 208 0 209 0 210 0 301 0 302 0303 1 * * * *

Thus, based on the area code of the number to be dialed, the STB 166will use the stored ten digit phone number, and reformat as necessary tocomplete the call over the PSTN 180.

A more complete description of a system and apparatus for properlyformatting a dialed number from a stored telephone number (e.g., whenthe stored number is in a ten digit format), can be found in U.S. Pat.No. 6,597,785, entitled “Automatic Caller ID Call Log Dial Back”, issuedto Burke et al on Jul. 22, 2003, which is hereby incorporated byreference.

After the correct dialing number is determined, the STB 166 waits for adial tone (step 722) at the telephone connected to the STB and that theuser will use to make the phone call (most likely in close proximity toTV 132). For example, if there are several phones (extensions)throughout the subscriber premises, and someone other than the user isusing one of the other telephones within the premises, the STB may beprogrammed to display a message at the TV indicating that the line isbusy or that no dial tone is available. The STB can also tell the userthrough the display that the number will be dialed when the phone linebecomes available (the user can decide whether to wait or cancel thecall request).

After a dial tone is detected at step 722, the user is instructed (bydisplay at the TV), to pick up the telephone, step 724. Once the STBdetects that the telephone receiver has been picked up, the STB dialsthe correctly formatted number (step 726), and when the telephonereceiver at the called location is picked up, the call is completed(step 728) and the user at the dialing location and the user at thecalled location may then have a telephone conversation (which in theillustrated embodiment is carried over the PSTN 180).

It should be noted that the forgoing feature for calling a sender of anemail message could be implemented in many other ways. For example, ifthe central office switch 182 (FIG. 1) implements AIN (Advancedintelligent Network) functionality, the STB 166 could dial the telephonenumber of the user to be called, and the switch 182 could call back thecalling user as soon as that call can be completed. Further, thetelephone call could be made using IP telephony (using the internet),and the switch 182 could be bypassed altogether.

FIG. 8 is a flow diagram illustrating the process flow and associatedprogram steps by which the IM user at the subscriber premises 110 mayprovide a video file to another IM user. FIG. 8 will be described inconjunction with FIGS. 9 and 10, which illustrate functional featureswithin STB 166 used in encrypting and decrypting video files and keys aspart of the process of FIG. 8. In FIG. 8, the user first selects (step810) the Send Video File button 640 seen in FIG. 6. In one embodiment,the user may merely select (step 812) from video files that havepreviously been stored by the IM user within the memory of the STB 166.Such files are stored in an appropriate format, such as MPEG-2. However,the user may also select a file to be created or that is currently beingcreated, such as a file or video clip of the program that the user iscurrently watching at TV 132. Systems and services for storing videoprogramming currently being viewed or broadcast are those marketed byTiVo (TiVo is a registered trademark of TiVo, Inc., Alviso, Calif.).Such a system is described in U.S. Pat. No. 6,233,389, entitledMultimedia Time Warping System, issued to Barton et al. on May 15, 2002,which is hereby incorporated by reference. If such a system wereemployed, TV programming currently being viewed at TV 132 issimultaneously being stored in memory, and the user sending theattachment could identify a TV show or portion thereof that might appealto another user as he or she is watching it, and use the stored file ofthe TV program as an attachment to an instant message created as the TVprogram is still being watched.

It should be appreciated that depending on the source, the video file tobe shared may be stored in a proprietary format (e.g., other thanMPEG-2) at the STB 166. For example, if the file is created using thepreviously mentioned TiVo system, such file would be in a TiVoproprietary format and may be stored at the STB in that proprietaryformat. The file may be re-formatted (to MPEG-2) by the STB when sharedwith others, or shared (sent to another IM user) in the storedproprietary format if the destination STB is programmed to use thatproprietary format.

After the user has selected a video file, the STB may also attach (step814) an encryption key associated with that TV program file. This isparticularly useful if the TV program is broadcast on a premium channel(the user has paid a subscription fee for viewing at TV 132), and theprogram has been encrypted using well know encryption techniques toprevent unauthorized viewing.

In order to more completely understand this last mentioned feature ofthe described embodiment (implemented at step 814), reference can bemade to FIG. 9, which illustrates the use of encryption for TVprogramming as could be implemented by the CPU 312 and otherfunctionality within STB 166. As can be seen, the encryption/decryptionfunctionality within the STB 166 includes a decryption function 912 forreceiving an encrypted program or service, and providing the program ina decrypted format at its output, through the use of a working keyprovided by a security processor 914. The security processor 914 isconnected to memory (RAM 918 and ROM 920). The memory stores both anencrypted pre-key that is provided by the service provider when the usersubscribes to the service, and a monthly key that is provided by theservice provider (changed each month to make it difficult to obtainunauthorized access to the program). As illustrated in FIG. 10, the STB166 uses the pre-key to decrypt (block 1010) the monthly key, resultingin a working key that is provided to the programming decryption function912 (FIG. 9) in order to decrypt the programming signal. The securityprocessor 914 controls a switch 926, so that if the user has theappropriate pre-key and monthly key, the decrypted programming isprovided by switch 926 to TV 132 via the video encoder/decoder 332(previously discussed in conjunction with FIG. 3). If the user is notauthorized, the switch 926 provides encrypted programming (scrambled soas to not be viewable) to TV 132.

The encryption/decryption techniques described are well known, andtechniques other than those described could be employed. A more detaileddescription of the functionality seen in FIGS. 9 and 10 is found in U.S.Pat. No. 5,594,794, issued to Eyer et al. on Jan. 14, 1997, which ishereby incorporated by reference.

As seen in FIG. 9, the video provided to TV 132 is also outputted as afile (MPEG-2 format) to be stored within the STB 166. Such file can beaccessed and then sent to another user as an video file attached to aninstant message (step 812, FIG. 8). Further, as also seen in FIG. 9, thesecurity processor 914 also supplies the working key so that it can bestored with the video file, for reasons to be explained shortly.

Returning to FIG. 8, the IM user wanting to attach a video file thensends the message with the selected video file (which is now decrypted,but includes the working key associated with that video file), step 816.When the message and attachment are received at the intended destination(i.e., one of the other users on the “buddy list”), the STB 166 at thatdestination stores the video file, and compares the working key (sentwith the message) to a working key generated at that STB, step 818. Inparticular, if the destination user has subscribed to the same premiumchannel, that STB at the destination takes the program pre-key andmonthly key stored at that location for viewing encrypted programming,and derives a working key (see FIG. 10), and compares that working keyto the working key sent with the video file. It should be noted that thedestination user may subscribe to more than one premium channel orpay-per-view channel, it which case a comparison is made of the workingkey generated for each such channel to the working key sent with theattachment. At step 820, if a match is made, the video file is passed tothe TV connected to the STB at that location; if there is no match, thevideo file is blocked at that location from being displayed.

It is noteworthy that the use of a working key as the key or code topermit viewing is but one example of a process for assuring that thedestination user is authorized to view the video file. Requiring thatthe destination decrypt a monthly key to yield a working key assuresthat the destination has both a monthly key and an encrypted programpre-key. However, in alternative embodiments, the video file could besent with just the program pre-key, just the monthly key, or with anyother key or code, as long as the same key or code will be present (orcan be generated) at a destination when that destination is anauthorized viewer/location of the channel from which the video file wasoriginally made.

It should be appreciated that the method described above for matchingkeys at the destination is particularly useful in the context of instantmessaging, where the user sending a video or other protected filedistributes each message to a group of users (recipients) who happen tobe on the “buddy list”, and thus where it is difficult or impracticalfor the user to ask each person whether they are authorized to viewprogramming from a premium (or pay-per-view) channel, and be able toverify that each such recipient is in fact so authorized.

Turning now to FIGS. 11 and 12, there is illustrated an arrangementwhere the operator of the IM server 192 (or others with access to the IMserver) may use data collected during an IM session. In particular,there is seen in FIG. 11 a survey database 1110 connected to the IMserver 192. The database 1110 stores data collected or gleaned from themessages being posted by the instant messaging services (and each of theinstant messaging sessions) operated through use of the IM server 192.Such data can include the number of users, which TV programs those usersare watching (based on the TV programming names or IDs presented withinstant messages), key words present in messages, and so forth. Thedatabase 1110 is connected to a database or survey system 1112, thatincludes a survey server 1114 which manages the database 1110, aninput/output terminal 1116 for permitting queries and other actions inconnection with the data, building database reports, etc., and a printer1118 for printing database reports, etc.

The types of data that are collected and the reports that can begenerated by the database system 1112 are numerous. It should beappreciated that since the data collected relates to instant messagingbeing posted, TV programs being watched by the IM users, telephone callsbeing made in association with the messages, and other data associatedwith the content of those messages, that the data is real time, i.e.,reflects instantaneous activity by users. As an example, if a TVprogramming entity wants to know on an instantaneous basis how audiencesare reacting to a broadcast program, the data generated at system 1112can be used by the survey system operator for such purpose.

An exemplary report in such an instance is shown in FIG. 12, where at agiven time (8:15PM) for a given broadcast program (“TV Show A”), aprogramming entity can learn how many users are using the IM server 192(the total survey population), how many of those users are watching ShowA, whether over a period of time (say, 5 minutes) the number of viewersis trending up or down (i.e., whether the number of viewers hasincreased or decreased), and how the TV program is impacting instantmail activity and phone activity (an increase in mail or phone activityby users watching Show A might indicate the degree of interest in theprogram). In addition, to the extent users have permitted profile datato be used (field 430 in FIG. 4), the survey organization may also learnabout the demographics of the users being reported. All of this is realtime, of course, with data changing as activity changes, and suchinstantaneous data capable of being reported as it changes. This permitsthe survey organization, for example, to note favorable or unfavorableinstant messaging activity moment by moment, or scene by scene, as a TVprogram progresses.

In conclusion, the described embodiments of the invention providenetworks, systems and methods implementing various applications,features, and functionality relating to instant messaging and similarservices. While the network 100 is described as employing VDSL service,it should be appreciated that other forms of data transmission could beemployed. For example, the video programming or signals transmitted tothe STB 166 at the subscriber premises (and even the voice and datasignals) can be from one or more video sources, such as cable TV,satellite, and other forms of wireline and wireless transmission. Suchtransmission can be made in conjunction with or separately from theconnections/transmissions between the subscriber premises and thecentral office 150. In such example, if video programming originatesfrom a satellite system, then the NID 112 (in FIG. 1) may receivesignals (e.g., voice and data) over drop cable 160 and the STB 166 mayalso separately receive video programming from a separate line (notshown) carrying video signals from a satellite dish at the subscriberpremises.

Furthermore, in other embodiments, the functionality described asresident at the STB 166 (e.g., look up tables for telephone calling,assembling attachments and the corresponding encryption/decryption ofvideo messages and keys) could be provided in part or in whole at the IMserver 12 rather than the STB 166.

While a detailed description of presently preferred embodiments of theinvention have been given above, various alternatives, modifications,and equivalents will be apparent to those skilled in the art withoutvarying from the spirit of the invention. Therefore, the abovedescription should not be taken as limiting the scope of the invention,which is defined by the appended claims.

1. A display system for use in a communications network, comprising: adisplay device; and plural display windows at the display device, theplural windows for simultaneously displaying multiple content, wherein afirst display window displays video programming content and wherein asecond display window displays content from an instant messaging (IM)application.
 2. The display system of claim 1, wherein the videoprogramming content is a broadcast television program.
 3. The displaysystem of claim 2, wherein the broadcast television program is providedover one of a plurality of selectable television channels, and whereinthe display device is a television screen.
 4. The display system ofclaim 1, wherein the instant messaging content comprises: a personal IDassociated with a user of the IM application.
 5. The display system ofclaim 4, wherein the user is remote from the display system.
 6. Thedisplay system of claim 5, wherein the instant messaging content furthercomprises a program ID for identifying broadcast television programbeing viewed by the remote user.
 7. The display system of claim 6,wherein the instant messaging content further comprises a message sentfrom the remote user to a user at the display system.
 8. The displaysystem of claim 6, wherein the communications network has multiple userseach having a display device, wherein the communications networkincludes a server storing instant messaging content for display at eachdisplay device, and wherein the server may be used to aggregate instantmessaging content from the multiple users, whereby video programmingactivity by multiple users can be tracked at the server.
 9. The displaysystem of claim 5, wherein the instant messaging content furthercomprises a selectable telephone communications display element, andwherein a telephone communications line is established over thecommunications network between the user at the display system and theremote user, when the telephone communications display element isselected.
 10. The display system of claim 9, wherein the telephonecommunications line is connected at a telephone device separate from thedisplay system, and such telephone communications line uses the publicswitched telephone network (PSTN).
 11. The display system of claim 5,wherein a user at the display system is a subscriber to videoprogramming for display at the display system, wherein such user isassigned one or more security keys in order to receive the videoprogramming over the communications network, wherein such user may sendan attachment to the remote user, the attachment comprising a video datafile representing the video programming, and a security key associatedwith the video programming, and wherein video programming represented bythe video data file is displayed to the remote user only if the remoteuser has a security key matching the security key associated with thevideo programming.
 12. The display system of claim 1, wherein a user atthe display system is a subscriber to a VDSL service, and wherein theVDSL service provides telephone, video programming and internet accessservice to the subscriber over the communications network.
 13. Thedisplay system of claim 1, wherein the video programming content isprovided to the display system by a satellite television service. 14.The display system of claim 1, wherein the video programming content isprovided to the display system by a cable television service.
 15. In acommunications network having a plurality of users and a user interfacedevice associated with each user, the user interface device comprising:display means; and means for simultaneously displaying multiple contentto a viewer at the display means, including first window means fordisplaying video programming content at a first display window at saiddisplay means, and second window means for simultaneously displayingcontent from an instant messaging (IM) application at a second window atsaid display means.
 16. A method for displaying content to users in acommunications network, comprising: displaying content at a displaydevice associated with each user; and providing plural windows at thedisplay device, with a first window displaying video programming contentand a second window for simultaneously displaying instant messagingcontent.